half1(0) -> 0
half1(s1(0)) -> 0
half1(s1(s1(x))) -> s1(half1(x))
lastbit1(0) -> 0
lastbit1(s1(0)) -> s1(0)
lastbit1(s1(s1(x))) -> lastbit1(x)
conv1(0) -> cons2(nil, 0)
conv1(s1(x)) -> cons2(conv1(half1(s1(x))), lastbit1(s1(x)))
↳ QTRS
↳ DependencyPairsProof
half1(0) -> 0
half1(s1(0)) -> 0
half1(s1(s1(x))) -> s1(half1(x))
lastbit1(0) -> 0
lastbit1(s1(0)) -> s1(0)
lastbit1(s1(s1(x))) -> lastbit1(x)
conv1(0) -> cons2(nil, 0)
conv1(s1(x)) -> cons2(conv1(half1(s1(x))), lastbit1(s1(x)))
CONV1(s1(x)) -> CONV1(half1(s1(x)))
LASTBIT1(s1(s1(x))) -> LASTBIT1(x)
CONV1(s1(x)) -> LASTBIT1(s1(x))
CONV1(s1(x)) -> HALF1(s1(x))
HALF1(s1(s1(x))) -> HALF1(x)
half1(0) -> 0
half1(s1(0)) -> 0
half1(s1(s1(x))) -> s1(half1(x))
lastbit1(0) -> 0
lastbit1(s1(0)) -> s1(0)
lastbit1(s1(s1(x))) -> lastbit1(x)
conv1(0) -> cons2(nil, 0)
conv1(s1(x)) -> cons2(conv1(half1(s1(x))), lastbit1(s1(x)))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
CONV1(s1(x)) -> CONV1(half1(s1(x)))
LASTBIT1(s1(s1(x))) -> LASTBIT1(x)
CONV1(s1(x)) -> LASTBIT1(s1(x))
CONV1(s1(x)) -> HALF1(s1(x))
HALF1(s1(s1(x))) -> HALF1(x)
half1(0) -> 0
half1(s1(0)) -> 0
half1(s1(s1(x))) -> s1(half1(x))
lastbit1(0) -> 0
lastbit1(s1(0)) -> s1(0)
lastbit1(s1(s1(x))) -> lastbit1(x)
conv1(0) -> cons2(nil, 0)
conv1(s1(x)) -> cons2(conv1(half1(s1(x))), lastbit1(s1(x)))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDP
LASTBIT1(s1(s1(x))) -> LASTBIT1(x)
half1(0) -> 0
half1(s1(0)) -> 0
half1(s1(s1(x))) -> s1(half1(x))
lastbit1(0) -> 0
lastbit1(s1(0)) -> s1(0)
lastbit1(s1(s1(x))) -> lastbit1(x)
conv1(0) -> cons2(nil, 0)
conv1(s1(x)) -> cons2(conv1(half1(s1(x))), lastbit1(s1(x)))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
LASTBIT1(s1(s1(x))) -> LASTBIT1(x)
POL(LASTBIT1(x1)) = 2·x1
POL(s1(x1)) = 2 + 2·x1
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
↳ QDP
half1(0) -> 0
half1(s1(0)) -> 0
half1(s1(s1(x))) -> s1(half1(x))
lastbit1(0) -> 0
lastbit1(s1(0)) -> s1(0)
lastbit1(s1(s1(x))) -> lastbit1(x)
conv1(0) -> cons2(nil, 0)
conv1(s1(x)) -> cons2(conv1(half1(s1(x))), lastbit1(s1(x)))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
HALF1(s1(s1(x))) -> HALF1(x)
half1(0) -> 0
half1(s1(0)) -> 0
half1(s1(s1(x))) -> s1(half1(x))
lastbit1(0) -> 0
lastbit1(s1(0)) -> s1(0)
lastbit1(s1(s1(x))) -> lastbit1(x)
conv1(0) -> cons2(nil, 0)
conv1(s1(x)) -> cons2(conv1(half1(s1(x))), lastbit1(s1(x)))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
HALF1(s1(s1(x))) -> HALF1(x)
POL(HALF1(x1)) = 2·x1
POL(s1(x1)) = 2 + 2·x1
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
half1(0) -> 0
half1(s1(0)) -> 0
half1(s1(s1(x))) -> s1(half1(x))
lastbit1(0) -> 0
lastbit1(s1(0)) -> s1(0)
lastbit1(s1(s1(x))) -> lastbit1(x)
conv1(0) -> cons2(nil, 0)
conv1(s1(x)) -> cons2(conv1(half1(s1(x))), lastbit1(s1(x)))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
CONV1(s1(x)) -> CONV1(half1(s1(x)))
half1(0) -> 0
half1(s1(0)) -> 0
half1(s1(s1(x))) -> s1(half1(x))
lastbit1(0) -> 0
lastbit1(s1(0)) -> s1(0)
lastbit1(s1(s1(x))) -> lastbit1(x)
conv1(0) -> cons2(nil, 0)
conv1(s1(x)) -> cons2(conv1(half1(s1(x))), lastbit1(s1(x)))